/*
 * 描          述:  <描述>
 * 修  改   人:  PengQingyang
 * 修改时间:  2022年6月28日
 * <修改描述:>
 */
package com.tx.component.file.resource;

import java.io.IOException;

import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;

/**
 * FCResource的序列化定义<br/>
 * <功能详细描述>
 * 
 * @author  PengQingyang
 * @version  [版本号, 2022年6月28日]
 * @see  [相关类/方法]
 * @since  [产品/模块版本]
 */
public class FCResourceJsonSerializer extends JsonSerializer<FCResource> {
    
    /**
     * @param value
     * @param gen
     * @param serializers
     * @throws IOException
     */
    @Override
    public void serialize(FCResource value, JsonGenerator gen,
            SerializerProvider serializers) throws IOException {
        if (value == null) {
            return;
        }
        
        gen.writeStartObject();
        //catalog
        gen.writeFieldName("catalog");
        gen.writeString(value.getCatalog());
        //relativePath
        gen.writeFieldName("relativePath");
        gen.writeString(value.getRelativePath());
        //filename
        gen.writeFieldName("filename");
        gen.writeString(value.getFilename());
        //filenameExtension
        gen.writeFieldName("filenameExtension");
        gen.writeString(value.getFilenameExtension());
        //type
        gen.writeFieldName("type");
        gen.writeString(value.getType().getName());
        gen.writeEndObject();
    }
    
}
